home *** CD-ROM | disk | FTP | other *** search
/ Languguage OS 2 / Languguage OS II Version 10-94 (Knowledge Media)(1994).ISO / gnu / libg_261.zip / libg_261 / libio / config.shared < prev    next >
Text File  |  1994-10-24  |  11KB  |  360 lines

  1. # Copyright (C) 1993 Free Software Foundation
  2. # This file is part of the GNU IO Library.  This library is free
  3. # software; you can redistribute it and/or modify it under the
  4. # terms of the GNU General Public License as published by the
  5. # Free Software Foundation; either version 2, or (at your option)
  6. # any later version.
  7. # This library is distributed in the hope that it will be useful,
  8. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  9. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  10. # GNU General Public License for more details.
  11. # You should have received a copy of the GNU General Public License
  12. # along with GNU CC; see the file COPYING.  If not, write to
  13. # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
  14.  
  15. # Significant variables:
  16.  
  17. test -z "${TO_TOPDIR}" && TO_TOPDIR=${TOLIBGXX}../
  18. DOING_LIBGXX=${DOING_LIBGXX-false}
  19. THIS_FILE="${srcdir}/${TOLIBGXX}config.shared"
  20.  
  21. echo "# Start of package fragment generated by ${THIS_FILE}."
  22.  
  23. # TOLIBGXX
  24. # MOSTLYCLEAN
  25. # CLEAN
  26. # DISTCLEAN
  27. # REALCLEAN
  28. # SUBDIRS [defaults to (configdirs)]
  29. # INFO_FILES   List of (basenames of) texinfo files
  30. # INFO_SUBDIRS [default: empty]  sub-directories containing documentation
  31.  
  32. rootme=${rootme-`pwd`}
  33. TOPDIR=${TOPDIR='$${rootme}'${TO_TOPDIR}}
  34. echo '#' TOPDIR="${TOPDIR} invsubdir=${invsubdir} subdir=${subdir}"
  35. SUBDIRS=${SUBDIRS-${configdirs}}
  36.  
  37. echo "srcdir = ${srcdir}"
  38. echo "SUBDIRS = ${SUBDIRS}"
  39.  
  40. echo "prefix = ${prefix-/usr/local}"
  41. echo "exec_prefix = ${exec_prefix-'${prefix}'}"
  42.  
  43. echo 'bindir = $(exec_prefix)/bin'
  44. echo 'libdir = $(exec_prefix)/lib'
  45.  
  46. echo 'datadir = $(prefix)/lib'
  47. echo 'mandir = $(prefix)/man'
  48. echo 'man1dir = $(mandir)/man1'
  49. echo 'man2dir = $(mandir)/man2'
  50. echo 'man3dir = $(mandir)/man3'
  51. echo 'man4dir = $(mandir)/man4'
  52. echo 'man5dir = $(mandir)/man5'
  53. echo 'man6dir = $(mandir)/man6'
  54. echo 'man7dir = $(mandir)/man7'
  55. echo 'man8dir = $(mandir)/man8'
  56. echo 'man9dir = $(mandir)/man9'
  57.  
  58. echo 'infodir = $(prefix)/info'
  59. echo 'includedir = $(prefix)/include'
  60. echo 'gxx_includedir = $(libdir)/g++-include'
  61. echo 'docdir = $(datadir)/doc'
  62. echo ''
  63. echo 'SHELL = /bin/sh'
  64. echo ''
  65. case "$srcdir" in
  66.  /*) echo 'INSTALL = $(srcdir)'/"${TO_TOPDIR}install.sh -c" ;;
  67.  *)  echo 'INSTALL = $${rootme}$(srcdir)'/"${TO_TOPDIR}install.sh -c" ;;
  68. esac
  69. echo 'INSTALL_PROGRAM = $(INSTALL)'
  70. echo 'INSTALL_DATA = $(INSTALL)'
  71. echo ''
  72. echo 'AR = `if [ -f' ${TOPDIR}'binutils/ar ] ; \'
  73. echo "    then echo ${TOPDIR}binutils/ar ; "'\'
  74. echo '    else echo ar ; fi`'
  75. echo 'AR_FLAGS = rc'
  76. echo 'RANLIB = `if [ -f' ${TOPDIR}'binutils/ranlib ] ; \'
  77. echo '    then echo '${TOPDIR}'binutils/ranlib ; \'
  78. echo '    else echo ranlib ; fi`'
  79. echo 'NM = `if [ -f' ${TOPDIR}'binutils/nm.new ] ; \'
  80. echo '    then echo '${TOPDIR}'binutils/nm.new ; \'
  81. echo '    else echo nm ; fi`'
  82. echo 'NLMCONV = `if [ -f' ${TOPDIR}'binutils/nlmconv ] ; \'
  83. echo '    then echo '${TOPDIR}'binutils/nlmconv ; \'
  84. echo '    else echo nlmconv ; fi`'
  85. echo 'LD = `if [ -f' ${TOPDIR}'ld/ld.new ] ; \'
  86. echo '    then echo '${TOPDIR}'ld/ld.new ; \'
  87. echo '    else echo ld ; fi`'
  88. echo ''
  89. echo 'MAKEINFO = `if [ -f '${TOPDIR}'texinfo/C/makeinfo ] ; \'
  90. echo '    then echo '${TOPDIR}'texinfo/C/makeinfo ; \'
  91. echo '    else echo makeinfo ; fi`'
  92. echo 'TEXIDIR=${srcdir}/'"${TO_TOPDIR}/texinfo"
  93. echo 'TEXI2DVI = TEXINPUTS=${TEXIDIR}:$$TEXINPUTS texi2dvi'
  94. echo ''
  95. echo 'CC = `if [ -f '${TOPDIR}'gcc/xgcc ] ; \'
  96. echo '    then echo '${TOPDIR}'gcc/xgcc -B'${TOPDIR}'gcc/ ; \'
  97. echo '    else echo cc ; fi`'
  98. echo 'CXX = `if [ -f '${TOPDIR}'gcc/xgcc ] ; \'
  99. echo '    then echo '${TOPDIR}'gcc/xgcc -B'${TOPDIR}'gcc/ ; \'
  100. echo '    else echo gcc ; fi`'
  101. echo ''
  102. # FIXME!!!
  103. if true ; then
  104.   echo 'WRAP_C_INCLUDES ='
  105. else
  106.   echo 'WRAP_C_INCLUDES = -I$(srcdir)'/${TOLIBGXX}g++-include
  107. fi
  108. echo 'CFLAGS = -g'
  109. echo 'CXXFLAGS = -g -O'
  110.  
  111. if test "${DOING_LIBGXX}" = "true" ; then
  112.   echo 'PROTODIR = $(srcdir)'/${TOLIBGXX}src/gen
  113.   echo "LIBS = ${TOLIBGXX}libg++.a"
  114.  
  115.   # You can override iostream (e.g. in a site- or host-Makefile fragment) to:
  116.   # iostream (Normal iostream library)
  117.   # old-stream (Old stream library; no longer supported)
  118.   # no-stream (If you don't want iostream to be part of libg++)
  119.   echo 'IO_DIR = ../libio'
  120.   echo '# IO_DIR = no-stream'
  121. fi
  122.  
  123. if [ -z "${ALL}" ] ; then
  124.   if [ -n "${TARGETLIB}" ] ; then
  125.     ALL='$(TARGETLIB)'
  126.     echo "TARGETLIB = ${TARGETLIB}"
  127.   elif [ -n "${TARGETPROG}" ] ; then
  128.     ALL='${TARGETPROG}'
  129.     echo "TARGETPROG = ${TARGETPROG}"
  130.   else
  131.     echo "config error: neither ALL, TARGETLIB or TARGETPROG is defined" 1>&2
  132.   fi
  133. fi
  134.  
  135. echo "all: ${ALL}"
  136. if [ "${SUBDIRS}" != "" ] ; then
  137.   echo '    @rootme=`pwd`/; export rootme; \'
  138.   echo '    $(MAKE) "DODIRS=$(SUBDIRS)" DO=all $(FLAGS_TO_PASS) subdir_do'
  139. fi
  140. echo '.PHONY: all'
  141.  
  142. echo ''
  143.  
  144.  
  145. echo
  146. if [ "${SUBDIRS}" != "" ] ; then
  147.   echo '.PHONY: subdir_do'
  148.   echo 'subdir_do: force'
  149.   echo '    @rootme=`pwd`/; export rootme; \'
  150.   echo '    for i in $(DODIRS); do \'
  151.   echo '        if [ -f  ./$$i/Makefile ] ; then \'
  152.   echo '            echo "cd $$i; make $(DO) ..." ; \'
  153.   echo '            (cd $$i ; $(MAKE) $(FLAGS_TO_PASS) $(DO)) || exit 1 ; \'
  154.   echo '        else true ; fi ; \'
  155.   echo '    done'
  156.   echo ''
  157.   echo '# List of variables to pass to sub-makes.  This should not be needed'
  158.   echo '# by GNU make or Sun make (both of which pass command-line variable'
  159.   echo '# overrides thouh $(MAKE)) but may be needed by older versions.'
  160.   echo ''
  161.   echo 'FLAGS_TO_PASS= \'
  162.   echo '    "INSTALL=$(INSTALL)" \'
  163.   echo '    "INSTALL_DATA=$(INSTALL_DATA)" \'
  164.   echo '    "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \'
  165.   echo '    "prefix=$(prefix)" \'
  166.   echo '    "exec_prefix=$(exec_prefix)" \'
  167.   echo '    "tooldir=$(tooldir)" \'
  168.   echo '    "AR=$(AR)" \'
  169.   echo '    "AR_FLAGS=$(AR_FLAGS)" \'
  170.   echo '    "CC=$(CC)" \'
  171.   echo '    "CXX=$(CXX)" \'
  172.   echo '    "CFLAGS=$(CFLAGS)" \'
  173.   echo '    "CXXFLAGS=$(CXXFLAGS)" \'
  174.   echo '    "RANLIB=$(RANLIB)" \'
  175.   echo '    "LOADLIBES=$(LOADLIBES)" \'
  176.   echo '    "LDFLAGS=$(LDFLAGS)" \'
  177.   echo '    "MAKEINFO=$(MAKEINFO)"'
  178. fi
  179.  
  180. echo 'NOSTDINC = -nostdinc++'
  181. if test -n "${CXXINCLUDES}" ; then
  182.   echo "CXXINCLUDES = ${CXXINCLUDES} "'$(NOSTDINC)'
  183. elif test "${DOING_LIBGXX}" = "true" ; then
  184.   echo 'CXXINCLUDES = $(NOSTDINC)'" -I. -I${TO_TOPDIR}libio"' -I$(srcdir) -I$(srcdir)/'"${TOLIBGXX}"'$(IO_DIR) -I$(srcdir)/'"${TOLIBGXX}src"' $(WRAP_C_INCLUDES)'
  185. fi
  186. if test -n "${CINCLUDES}" ; then
  187.   echo "CINCLUDES = ${CINCLUDES}"
  188. elif test "${DOING_LIBGXX}" = "true" ; then
  189.   echo 'CINCLUDES ='
  190. fi
  191.  
  192. echo '.SUFFIXES: .o .C .cc'
  193. echo '.c.o:'
  194. echo '    $(CC) -c $(CFLAGS) $(CINCLUDES) $<'
  195. [ "${TOUCH_ON_COMPILE}" = "yes" ] && echo '    @touch stamp'
  196. echo '.C.o:'
  197. echo '    $(CXX) -c $(CXXFLAGS) $(CXXINCLUDES) $<'
  198. [ "${TOUCH_ON_COMPILE}" = "yes" ] && echo '    @touch stamp'
  199. echo '.cc.o:'
  200. echo '    $(CXX) -c $(CXXFLAGS) $(CXXINCLUDES) $<'
  201. [ "${TOUCH_ON_COMPILE}" = "yes" ] && echo '    @touch stamp'
  202. echo ''
  203.  
  204. if [ -n "${TARGETLIB}" ] ; then
  205.   echo TARGETLIB = ${TARGETLIB}
  206. fi
  207. if [ -n "${TARGETPROG}" ] ; then
  208.   echo TARGETPROG = ${TARGETPROG}
  209. fi
  210.  
  211. echo ''
  212. echo '.PHONY: install'
  213. echo 'install:'
  214. echo '.PHONY: check'
  215. if [ "${CHECK}" != "check" ] ; then
  216.   echo "check: ${ALL} ${CHECK}"
  217.   if [ "${SUBDIRS}" != "" ] ; then
  218.     echo '    @rootme=`pwd`/; export rootme; \'
  219.     echo '    $(MAKE) "DODIRS=$(SUBDIRS)" DO=check $(FLAGS_TO_PASS) subdir_do'
  220.   fi
  221. fi
  222.  
  223. # Generate rules for documentation (depending on INFO_FILES and INFO_SUBDIRS).
  224.  
  225. echo '.PHONY: info dvi install-info clean-info'
  226.  
  227. # emit the rule for 'info'
  228. if [ -z "${INFO_FILES}" ] ; then
  229.   echo 'info:'
  230. else
  231.   echo info: `for file in ${INFO_FILES} ; do echo $file.info ; done`
  232. fi
  233. if [ "${INFO_SUBDIRS}" != "" ] ; then
  234.   echo '    @rootme=`pwd`/; export rootme; \
  235.     $(MAKE) "DODIRS='${INFO_SUBDIRS}'" DO=info $(FLAGS_TO_PASS) subdir_do'
  236. fi
  237.  
  238. # emit the rule for 'dvi'
  239. if [ -z "${INFO_FILES}" ] ; then
  240.   echo 'dvi:'
  241. else
  242.   echo dvi: `for file in ${INFO_FILES} ; do echo $file.dvi ; done`
  243. fi
  244. if [ "${INFO_SUBDIRS}" != "" ] ; then
  245.   echo '    @rootme=`pwd`/; export rootme; \
  246.     $(MAKE) "DODIRS='${INFO_SUBDIRS}'" DO=dvi $(FLAGS_TO_PASS) subdir_do'
  247. fi
  248.  
  249. # Emit rules for each *.info and *.dvi file
  250. for file in ${INFO_FILES} ; do
  251.   echo ${file}.info: '$(srcdir)'/${file}.texi
  252.   echo '    $(MAKEINFO) -I$(srcdir) -I$(TEXIDIR) $(srcdir)/'${file}.texi -o ${file}.info
  253.   echo ${file}.dvi: '$(srcdir)'/${file}.texi
  254.   echo '    $(TEXI2DVI) $(srcdir)'/${file}.texi
  255.   echo "${file}.ps: ${file}.dvi"
  256.   echo "    dvips ${file} -o"
  257. done
  258.  
  259. # emit the rule for install-info
  260. echo 'install-info:'
  261. if [ -n "${INFO_FILES}" ] ; then
  262.   echo '    -parent=`echo $(infodir)|sed -e' "'"'s@/[^/]*$$@@'"'"'`; \'
  263.   echo '    if [ -d $$parent ] ; then true ; else mkdir $$parent ; fi'
  264.   echo '    -if [ -d $(infodir) ] ; then true ; else mkdir $(infodir) ; fi'
  265.   echo '    for i in *.info* ; do \'
  266.   echo '      $(INSTALL_DATA) $$i $(infodir)/$$i ; \'
  267.   echo '    done'
  268. fi
  269. if [ "${INFO_SUBDIRS}" != "" ] ; then
  270.   echo '    @rootme=`pwd`/; export rootme; \
  271.     $(MAKE) "DODIRS='${INFO_SUBDIRS}'" DO=install-info $(FLAGS_TO_PASS) subdir_do'
  272. fi
  273.  
  274. # emit clean-info and clean-dvi rules
  275. echo '.PHONY: do-clean-info clean-info do-clean-dvi clean-dvi'
  276. echo do-clean-info:
  277. if [ -n "${INFO_FILES}" ] ; then
  278.   echo '    rm -f *.info*'
  279. fi
  280. echo 'do-clean-dvi:'
  281. if [ -n "${INFO_FILES}" ] ; then
  282.   echo '    rm -f *.dvi *.aux *.cp *.fn* *.ky *.log *.pg *.toc *.tp *.vr'
  283. fi
  284. for type in info dvi ; do
  285.   echo clean-${type}: do-clean-${type}
  286.   if [ "${INFO_SUBDIRS}" != "" ] ; then
  287.     echo '    @rootme=`pwd`/; export rootme; \
  288.     $(MAKE) "DODIRS='${NFO_SUBDIRS}'" DO=clean-'${type} '$(FLAGS_TO_PASS) subdir_do'
  289.   fi
  290. done
  291.  
  292. echo ''
  293.  
  294. echo '.PHONY: boltcc'
  295. echo 'boltcc:'
  296. echo '    rootme=`pwd`/ ; export rootme ; $(MAKE) $(FLAGS_TO_PASS)'
  297. echo ''
  298.  
  299. # Emit clean rules
  300.  
  301. echo ''
  302. echo '# clean rules'
  303.  
  304. MOSTLYCLEAN="${MOSTLYCLEAN-*.o core} `if test -n "${TOUCH_ON_COMPILE}"; then echo stamp; else true; fi`"
  305. CLEAN="${CLEAN-${TARGETPROG} ${TARGETLIB}}"
  306. DISTCLEAN="${DISTCLEAN-config.status Makefile *~ Make.pack}"
  307. REALCLEAN="${REALCLEAN-depend *.info*}"
  308.  
  309.  
  310. echo '.PHONY: mostlyclean clean distclean realclean'
  311. if test -z "${SUBDIRS}" ; then
  312.   echo "mostlyclean: clean-dvi"
  313.   echo "    rm -rf ${MOSTLYCLEAN}"
  314.   echo "clean: clean-dvi"
  315.   echo "    rm -rf ${MOSTLYCLEAN} ${CLEAN}"
  316.   echo "distclean: clean"
  317.   echo "    rm -rf ${DISTCLEAN}"
  318.   echo "realclean: clean clean-info"
  319.   echo "    rm -rf ${DISTCLEAN} ${REALCLEAN}"
  320. else
  321.   echo '.PHONY: do-clean subdir_distclean subdir_realclean'
  322.   echo "mostlyclean: do-clean-dvi"
  323.   echo "    rm -rf ${MOSTLYCLEAN}"
  324.   echo '    @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=mostlyclean subdir_do'
  325.   echo "do-clean: do-clean-dvi"
  326.   echo "    rm -rf ${MOSTLYCLEAN} ${CLEAN}"
  327.   echo "clean: do-clean"
  328.   echo '    @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=clean subdir_do'
  329.   # distclean and realclean are tricky because they remove the Makefile.
  330.   echo "subdir_distclean:"
  331.   echo '    @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=distclean subdir_do'
  332.   echo "distclean: do-clean subdir_distclean"
  333.   echo "    rm -rf ${DISTCLEAN}"
  334.   echo "subdir_realclean:"
  335.   echo '    @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=realclean subdir_do'
  336.   echo "realclean: do-clean subdir_realclean do-clean-info"
  337.   echo "    rm -rf ${DISTCLEAN} ${REALCLEAN}"
  338. fi
  339.  
  340. echo ''
  341. echo '.PHONY: force'
  342. echo 'force:'
  343. echo ''
  344. echo '# with the gnu make, this is done automatically.'
  345. echo ''
  346. echo 'Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag)'
  347. echo '    $(SHELL) ./config.status'
  348. echo ''
  349. echo '.NOEXPORT:'
  350. echo 'MAKEOVERRIDES='
  351.  
  352. if [ -f ${srcdir}/${subdir}/depend ] ; then
  353.   cat ${srcdir}/${subdir}/depend
  354. fi
  355.  
  356. echo "# End of package fragment generated by ${THIS_FILE}."
  357.